package com.ruoyi.cm.service;

import com.ruoyi.cm.domain.CmBaSettleDeductDetail;
import com.ruoyi.cm.domain.vo.CmBaSettleDeductDetailVo;
import com.ruoyi.cm.domain.bo.CmBaSettleDeductDetailBo;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 其他计量详情Service接口
 *
 * @author zyb
 * @date 2024-09-24
 */
public interface ICmBaSettleDeductDetailService {

    /**
     * 查询其他计量详情
     */
    CmBaSettleDeductDetailVo queryById(Long deductDetailId);

    /**
     * 查询其他计量详情列表
     */
    TableDataInfo<CmBaSettleDeductDetailVo> queryPageList(CmBaSettleDeductDetailBo bo, PageQuery pageQuery);

    /**
     * 查询其他计量详情列表
     */
    List<CmBaSettleDeductDetailVo> queryList(CmBaSettleDeductDetailBo bo);

    /**
     * 新增其他计量详情
     */
    Boolean insertByBo(CmBaSettleDeductDetailBo bo);

    /**
     * 修改其他计量详情
     */
    Boolean updateByBo(CmBaSettleDeductDetailBo bo);

    /**
     * 校验并批量删除其他计量详情信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    List<CmBaSettleDeductDetailVo> bdlist(CmBaSettleDeductDetailBo bo);
}
